package cn.iocoder.yudao.module.eval.controller.admin.announcement.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import java.util.List;

@Schema(description = "管理后台 - 发送公告通知 Request VO")
@Data
public class EvalAnnouncementNotificationReqVO {

    @Schema(description = "通知渠道", requiredMode = Schema.RequiredMode.REQUIRED, example = "[\"system\", \"email\", \"sms\"]")
    @NotEmpty(message = "通知渠道不能为空")
    private List<String> notifyChannels;

    @Schema(description = "目标用户类型", example = "all")
    private String targetUserType;

    @Schema(description = "目标用户ID列表", example = "[123, 124, 125]")
    private List<Long> targetUserIds;

    @Schema(description = "自定义消息", example = "请关注最新公告")
    private String customMessage;

}
